package br.com.wagnerpaz.javahook;

/**
 * @author Wagner Paz
 * @since  1.0
 */
public interface NativeMouseListener
{
	/**
	 * Invoked when a mouse button has been pressed.
	 * 
	 * @param e Event information.
	 * @return true, case the event have to be processed by the system.
	 */
	public boolean mousePressed(NativeMouseEvent e);
	
	/**
	 * Invoked when a mouse button has been released.
	 * 
	 * @param e Event information.
	 * @return true, case the event have to be processed by the system.
	 */
	public boolean mouseReleased(NativeMouseEvent e);
	
	/**
	 * Invoked when the mouse has been moved.
	 * 
	 * @param e Event information.
	 * @return true, case the event have to be processed by the system.
	 */
	public boolean mouseMoved(NativeMouseEvent e);
	
	/**
	 * Invoked when the mouse wheel been rotated.
	 * 
	 * @param e Event information.
	 * @return true, case the event have to be processed by the system.
	 */
	public boolean mouseWheelMoved(NativeMouseWheelEvent e);
}